package com.example.form.service;

import com.example.form.model.User;

public interface IUserService {
    /**
     * 创建普通用户
     * @param user 用户信息
     */
    void createNormaluser(User user);

    /**
     *根据用户名查询用户的信息
     * @param username  用户名
     * @return 返回查询到的用户信息
     */
    User selectByUserName(String username);

    /**
     * 处理用户的登录信息
     * @param username 前端插入姓名
     * @param password 前端插入密码
     * @return
     */
    User login(String username,String password);

    /**
     * 根据⽤⼾Id查询⽤⼾信息
     * @param id 前端传入的参数
     * @return
     */
    User selectById(Long id);

    /**
     * 用户发布帖子数量增加
     * @param id  要增加帖子数量的用户id
     * @return  执行的结果
     */
    void addOneArticleCountById(Long id);

    /**
     * 板块中的帖子数量减一
     * @param id  板块id
     */
    void subOneArticleCountById(Long id);

    /**
     * 动态修改用户个人信息
     * @param user
     */
    void modifyInfo(User user);

    /**
     * 修改密码
     * @param id 用户id
     * @param newPassword  新的密码
     * @param oldPassword 老原密码
     */
    void modifyPassword(Long id,String newPassword,String oldPassword);

}
